use paho_mqtt::types;

pub mod basic;
pub mod enhanced;

pub type MqttVersion = u32;
pub type MqttQos = i32;

/// The default version to connect with.
/// First try v3.1.1, and if that fails, try v3.1
pub const MQTT_VERSION_DEFAULT: MqttVersion = types::MQTT_VERSION_DEFAULT;

/// Connect with MQTT v3.1
pub const MQTT_VERSION_3_1: MqttVersion = types::MQTT_VERSION_3_1;

/// Connect with MQTT v3.1.1
pub const MQTT_VERSION_3_1_1: MqttVersion = types::MQTT_VERSION_3_1_1;

/// Connect with MQTT v5
pub const MQTT_VERSION_5: MqttVersion = types::MQTT_VERSION_5;

/// Quality of Service Zero: At most once
pub const QOS_0: MqttQos = 0;

/// Quality of Service Zero: At least once
pub const QOS_1: MqttQos = 1;

/// Quality of Service Two: Exactly Once
pub const QOS_2: MqttQos = 2;